package com.jt.www.domain.qo;

import io.swagger.annotations.ApiModelProperty;

import javax.validation.constraints.NotBlank;

/**
 * @ProjectName: pol-svc
 * @Package: jtpf.pol.svc.vo.query
 * @ClassName: EndorsementsEduQueryVO
 * @Description: 教育批单列表查询参数
 * @Author: lxf
 * @CreateDate: 2019-05-07 19:26
 * @Version: 1.0
 * @Copyright: 江泰保险股份有限公司
 */
public class EndorsementsEduQueryVO {
    /**
     * 渠道号
     */
    @ApiModelProperty("渠道号")
    @NotBlank(message = "渠道号不能为空！")
    private String channelCode;
    /**
     * 渠道号
     */
    @ApiModelProperty("渠道分类：00-教保网，02-我学保")
    private String channelType;

    /**
     * 渠道号
     */
    @ApiModelProperty("批改方式：01-在线批单(对接保险公司),02-线下批单,03-半线上批单(用户发起，不对接保险公司")
    private String endorsementsMode;

    /**
     * 用户编码（普通用户传，总部用户、分支机构、保险公司不传）
     */
    @ApiModelProperty("用户编码（普通用户传，总部用户、分支机构、保险公司不传）")
    private String userCode;

    /**
     * 分支机构编码（普通用户）
     */
    @ApiModelProperty("分支机构编码")
    private String branchCode;


    /**
     * 分支机构编码多个 用逗号分隔（总部用户和分支机构）
     */
    @ApiModelProperty("分支机构编码多个 用逗号分隔（总部用户和分支机构）")
    private String branchScope;


    /**
     * 省市区编码 用逗号分隔 （总部用户和分支机构）
     */
    @ApiModelProperty("省市区编码 用逗号分隔 （总部用户和分支机构）")
    private String dataArea;

    /**
     * 保险公司编码
     */
    @ApiModelProperty("保险公司编码")
    private String issueCompanyCode;

    @ApiModelProperty("产品编码")
    private String productCode;


    /**
     * 批改类型
     */
    @ApiModelProperty("批改类型")
    private String endorsementsType;


    /**
     * 查询条件（保单号，投保单号，批单号，投保人名称，被保人名称）
     */
    @ApiModelProperty("查询条件（保单号，投保单号，批单号，投保人名称，被保人名称）")
    private String queryConditions;


    /**
     * 批单申请号
     */
    @ApiModelProperty("批单申请号")
    private String applyNo;

    @ApiModelProperty("保单号")
    private String policyNo;

    @ApiModelProperty("投保单号")
    private String appCode;

    @ApiModelProperty("批单号")
    private String endorsementsNo;

    @ApiModelProperty("投保人")
    private String holderName;

    @ApiModelProperty("被保人")
    private String insuredName;

    @ApiModelProperty("财务状态：00-未到账、02-部分到账、01-已到账")
    private String balanceStatus;

    /**
     * 批单状态：00-已提交、01 - 待复核、02 -待出单、03 - 已出单、04 -出单失败、05 -待审核、
     * 06-审核失败、08-复核失败、09-批单申请表已上传(特设),10-单证待上传,99-删除
     */
    @ApiModelProperty("批单状态：")
    private String status;


    /**
     * 批单申请日期 开始时间
     */
    @ApiModelProperty("批单申请日期 开始时间")
    private String applyDateStartTime;

    /**
     * 批单申请日期 结束时间
     */
    @ApiModelProperty("批单申请日期 结束时间")
    private String applyDateEndTime;

    /**
     * 批单保险起期 开始时间
     */
    @ApiModelProperty("批单保险起期 开始时间")
    private String startDateStartTime;

    /**
     * 批单保险起期 结束时间
     */
    @ApiModelProperty("批单保险起期 结束时间")
    private String startDateEndTime;
    /**
     * 批单保险起期 开始时间
     */
    @ApiModelProperty("批单保险止期 开始时间")
    private String eduDateStartTime;

    /**
     * 批单保险起期 结束时间
     */
    @ApiModelProperty("批单保险止期 结束时间")
    private String eduDateEndTime;


    @ApiModelProperty("保费确认到账日期 开始时间")
    private String premiumConfirmedDateStartTime;


    @ApiModelProperty("保费确认到账日期 结束时间")
    private String premiumConfirmedDateEndTime;


    /**
     * 分页 ： 页码
     */
    @ApiModelProperty("分页 ： 页码")
    private Integer pageNum = 1;


    /**
     * 分页 ： 每页数据量
     */
    @ApiModelProperty("分页 ： 每页数据量")
    private Integer pageSize = 10;

    /**
     * 教育渠道 查询列表，不需要登录场景传参 ：edu_key
     */
    private String key;


    public String getChannelCode() {
        return channelCode;
    }

    public void setChannelCode(String channelCode) {
        this.channelCode = channelCode;
    }

    public String getChannelType() {
        return channelType;
    }

    public void setChannelType(String channelType) {
        this.channelType = channelType;
    }

    public String getEndorsementsMode() {
        return endorsementsMode;
    }

    public void setEndorsementsMode(String endorsementsMode) {
        this.endorsementsMode = endorsementsMode;
    }

    public String getUserCode() {
        return userCode;
    }

    public void setUserCode(String userCode) {
        this.userCode = userCode;
    }

    public String getBranchCode() {
        return branchCode;
    }

    public void setBranchCode(String branchCode) {
        this.branchCode = branchCode;
    }

    public String getBranchScope() {
        return branchScope;
    }

    public void setBranchScope(String branchScope) {
        this.branchScope = branchScope;
    }

    public String getDataArea() {
        return dataArea;
    }

    public void setDataArea(String dataArea) {
        this.dataArea = dataArea;
    }

    public String getIssueCompanyCode() {
        return issueCompanyCode;
    }

    public void setIssueCompanyCode(String issueCompanyCode) {
        this.issueCompanyCode = issueCompanyCode;
    }

    public String getProductCode() {
        return productCode;
    }

    public void setProductCode(String productCode) {
        this.productCode = productCode;
    }

    public String getEndorsementsType() {
        return endorsementsType;
    }

    public void setEndorsementsType(String endorsementsType) {
        this.endorsementsType = endorsementsType;
    }

    public String getQueryConditions() {
        return queryConditions;
    }

    public void setQueryConditions(String queryConditions) {
        this.queryConditions = queryConditions;
    }

    public String getApplyNo() {
        return applyNo;
    }

    public void setApplyNo(String applyNo) {
        this.applyNo = applyNo;
    }

    public String getPolicyNo() {
        return policyNo;
    }

    public void setPolicyNo(String policyNo) {
        this.policyNo = policyNo;
    }

    public String getAppCode() {
        return appCode;
    }

    public void setAppCode(String appCode) {
        this.appCode = appCode;
    }

    public String getEndorsementsNo() {
        return endorsementsNo;
    }

    public void setEndorsementsNo(String endorsementsNo) {
        this.endorsementsNo = endorsementsNo;
    }

    public String getHolderName() {
        return holderName;
    }

    public void setHolderName(String holderName) {
        this.holderName = holderName;
    }

    public String getInsuredName() {
        return insuredName;
    }

    public void setInsuredName(String insuredName) {
        this.insuredName = insuredName;
    }

    public String getBalanceStatus() {
        return balanceStatus;
    }

    public void setBalanceStatus(String balanceStatus) {
        this.balanceStatus = balanceStatus;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getApplyDateStartTime() {
        return applyDateStartTime;
    }

    public void setApplyDateStartTime(String applyDateStartTime) {
        this.applyDateStartTime = applyDateStartTime;
    }

    public String getApplyDateEndTime() {
        return applyDateEndTime;
    }

    public void setApplyDateEndTime(String applyDateEndTime) {
        this.applyDateEndTime = applyDateEndTime;
    }

    public String getStartDateStartTime() {
        return startDateStartTime;
    }

    public void setStartDateStartTime(String startDateStartTime) {
        this.startDateStartTime = startDateStartTime;
    }

    public String getStartDateEndTime() {
        return startDateEndTime;
    }

    public void setStartDateEndTime(String startDateEndTime) {
        this.startDateEndTime = startDateEndTime;
    }

    public String getEduDateStartTime() {
        return eduDateStartTime;
    }

    public void setEduDateStartTime(String eduDateStartTime) {
        this.eduDateStartTime = eduDateStartTime;
    }

    public String getEduDateEndTime() {
        return eduDateEndTime;
    }

    public void setEduDateEndTime(String eduDateEndTime) {
        this.eduDateEndTime = eduDateEndTime;
    }

    public String getPremiumConfirmedDateStartTime() {
        return premiumConfirmedDateStartTime;
    }

    public void setPremiumConfirmedDateStartTime(String premiumConfirmedDateStartTime) {
        this.premiumConfirmedDateStartTime = premiumConfirmedDateStartTime;
    }

    public String getPremiumConfirmedDateEndTime() {
        return premiumConfirmedDateEndTime;
    }

    public void setPremiumConfirmedDateEndTime(String premiumConfirmedDateEndTime) {
        this.premiumConfirmedDateEndTime = premiumConfirmedDateEndTime;
    }

    public Integer getPageNum() {
        return pageNum;
    }

    public void setPageNum(Integer pageNum) {
        this.pageNum = pageNum;
    }

    public Integer getPageSize() {
        return pageSize;
    }

    public void setPageSize(Integer pageSize) {
        this.pageSize = pageSize;
    }

    public String getKey() {
        return key;
    }

    public void setKey(String key) {
        this.key = key;
    }
}
